package com.gitee.liuzhi.common.util;


import java.util.Objects;
import java.util.function.Consumer;

/**
 * @Author liuzhi
 * @Date 2023/8/29 22:10
 * @Version 1.0
 * @Description Null 工具类
 */
public class NullUtil {


    /**
     * 当设置值不为null时, 设定
     * @param source 设置值
     * @param setting 设置方法
     */
    public static  <T> void setting(T source, Consumer<T> setting) {
        if (Objects.isNull(source)) {
            return;
        }
        setting.accept(source);
    }

    /**
     * 当原值为null时, 设定
     * @param origData 原值
     * @param defaultData 默认值
     * @param setting 设置方法
     */
    public static <T> void defaultSetting(T origData, T defaultData, Consumer<T> setting) {
        if (Objects.isNull(origData)) {
            setting.accept(defaultData);
        }
    }
}
